如何在Excel中自动调整合并单元格的行高?

您所在的位置:网站首页 excel 自动高度 如何在Excel中自动调整合并单元格的行高?

如何在Excel中自动调整合并单元格的行高?

2023-11-11 09:28| 来源: 网络整理| 查看: 265

如何在Excel中自动调整合并单元格的行高?

我们可以看到,如果我们尝试将大量数据适合一个单元格中,数据将不会显示,如果我们移动到另一个单元格;解决这个问题的唯一方法就是增加单元格的行高。对于仅一个单元格,我们可以使用“Alt+Enter”命令来调整行高,但是当我们尝试合并不同高度的单元格时,我们可能会面临同样的问题;我们无法使用该命令。阅读本教程以了解如何解决此问题,即如何在Excel中自动调整合并单元格的行高。

在Excel中自动调整合并单元格的行高

在这里,我们将首先插入一个VBA模块,然后运行代码并选择一个单元格范围来完成任务。让我们看一个简单的过程,以了解如何在Excel中自动调整合并单元格的行高。

第一步

考虑具有两个不同高度的单元格合并的Excel表格的以下图像 –

如何在Excel中自动调整合并单元格的行高?

现在,为了调整行高,请右键单击工作表名称,选择查看代码以打开vba应用程序,然后单击插入并选择模块,然后在以下图像中所示的文本框中键入“程序”。

例子 Option Explicit Public Sub AutoFitAll() Call AutoFitMergedCells(Range("a1:b2")) Call AutoFitMergedCells(Range("c4:d6")) Call AutoFitMergedCells(Range("e1:e3")) End Sub Public Sub AutoFitMergedCells(oRange As Range) Dim tHeight As Integer Dim iPtr As Integer Dim oldWidth As Single Dim oldZZWidth As Single Dim newWidth As Single Dim newHeight As Single With Sheets("Sheet1") oldWidth = 0 For iPtr = 1 To oRange.Columns.Count oldWidth = oldWidth + .Cells(1, oRange.Column + iPtr - 1).ColumnWidth Next iPtr oldWidth = .Cells(1, oRange.Column).ColumnWidth + .Cells(1, oRange.Column + 1).ColumnWidth oRange.MergeCells = False newWidth = Len(.Cells(oRange.Row, oRange.Column).Value) oldZZWidth = .Range("ZZ1").ColumnWidth .Range("ZZ1") = Left(.Cells(oRange.Row, oRange.Column).Value, newWidth) .Range("ZZ1").WrapText = True .Columns("ZZ").ColumnWidth = oldWidth .Rows("1").EntireRow.AutoFit newHeight = .Rows("1").RowHeight / oRange.Rows.Count .Rows(CStr(oRange.Row) &: & CStr(oRange.Row + oRange.Rows.Count - 1)).RowHeight = newHeight oRange.MergeCells = True oRange.WrapText = True .Range("ZZ1").ClearContents .Range("ZZ1").ColumnWidth = oldZZWidth End With End Sub

在代码中, Sheet1 是工作簿的名称,我们可以根据需求调整单元格范围。

现在将该表格保存为启用宏的模板,然后使用命令F5运行代码并成功完成我们的过程,如下图所示。

如何在Excel中自动调整合并单元格的行高?

结论

在本教程中,我们使用了一个简单的例子来演示如何在Excel中自动调整合并单元格的行高。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3